package com.ruoyi.products.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 产品功能对象 products
 * 
 * @author ruoyi
 * @date 2024-09-24
 */
public class Products extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 商品ID */
    private Integer id;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String productName;

    /** 供应商ID */
    @Excel(name = "供应商ID")
    private String supplierName;

    public Integer getSupplierId() {
        return supplierId;
    }

    public void setSupplierId(Integer supplierId) {
        this.supplierId = supplierId;
    }

    @Excel(name = "供应商ID")
    private Integer supplierId;

    public String getImg() {
        return img;
    }

    public void setImg(String img) {
        this.img = img;
    }

    @Excel(name = "图片")
    private String img;
    /** 商品描述 */
    @Excel(name = "商品描述")
    private String productDescription;

    /** 销售价格 */
    @Excel(name = "销售价格")
    private BigDecimal sellingPrice;

    /** 商品数量 */
    @Excel(name = "商品数量")
    private Integer productQuantity;

    /** 商品规格 */
    @Excel(name = "商品规格")
    private String productSpecification;

    /** 包装单位 */
    @Excel(name = "包装单位")
    private String packagingUnit;

    /** 生产批号 */
    @Excel(name = "生产批号")
    private String batchNumber;

    /** 批准文号 */
    @Excel(name = "批准文号")
    private String approvalNumber;

    /** 状态 */
    @Excel(name = "状态")
    private String status;

    /** 创建时间 */
    private Date createdAt;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updatedAt;

    public void setId(Integer id) 
    {
        this.id = id;
    }

    public Integer getId() 
    {
        return id;
    }
    public void setProductName(String productName) 
    {
        this.productName = productName;
    }

    public String getProductName() 
    {
        return productName;
    }
    public void setSupplierName(String supplierName)
    {
        this.supplierName = supplierName;
    }

    public String getSupplierName()
    {
        return supplierName;
    }
    public void setProductDescription(String productDescription) 
    {
        this.productDescription = productDescription;
    }

    public String getProductDescription() 
    {
        return productDescription;
    }
    public void setSellingPrice(BigDecimal sellingPrice) 
    {
        this.sellingPrice = sellingPrice;
    }

    public BigDecimal getSellingPrice() 
    {
        return sellingPrice;
    }
    public void setProductQuantity(Integer productQuantity) 
    {
        this.productQuantity = productQuantity;
    }

    public Integer getProductQuantity() 
    {
        return productQuantity;
    }
    public void setProductSpecification(String productSpecification) 
    {
        this.productSpecification = productSpecification;
    }

    public String getProductSpecification() 
    {
        return productSpecification;
    }
    public void setPackagingUnit(String packagingUnit) 
    {
        this.packagingUnit = packagingUnit;
    }

    public String getPackagingUnit() 
    {
        return packagingUnit;
    }
    public void setBatchNumber(String batchNumber) 
    {
        this.batchNumber = batchNumber;
    }

    public String getBatchNumber() 
    {
        return batchNumber;
    }
    public void setApprovalNumber(String approvalNumber) 
    {
        this.approvalNumber = approvalNumber;
    }

    public String getApprovalNumber() 
    {
        return approvalNumber;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }
    public void setUpdatedAt(Date updatedAt) 
    {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() 
    {
        return updatedAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
                .append("supplierName",getSupplierName())
            .append("productName", getProductName())
            .append("supplierId", getSupplierId())
            .append("productDescription", getProductDescription())
            .append("sellingPrice", getSellingPrice())
            .append("productQuantity", getProductQuantity())
            .append("productSpecification", getProductSpecification())
            .append("packagingUnit", getPackagingUnit())
            .append("batchNumber", getBatchNumber())
            .append("approvalNumber", getApprovalNumber())
            .append("status", getStatus())
            .append("createdAt", getCreatedAt())
            .append("updatedAt", getUpdatedAt())
            .toString();
    }
}
